package com.song.mall.search.vo;

import com.song.common.to.es.SkuEsModel;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * @author 宋超
 * HP - the login name of the current user.
 * 2021/9/27 - the current system date.
 * 9:41 - the current system time.
 */
@Data
public class SearchResult {
    //查询到的所有的商品信息
    private List<SkuEsModel> products;

    private Integer pageNum;//页码
    private Long total;//总记录数
    private Integer totalPages;//总页码

    private List<Integer> pageNavs;

    private List<BrandVo> brands;//当前查询到的结果，所有涉及到的品牌
    private List<CatalogVo> catalogs;//当前查询到的结果，所有涉及到的所有分类
    private List<AttrVo> attrs;//当前查询到的结果，所有涉及到的属性

    //面包屑导航数据
    private List<NavVo> navs = new ArrayList<>();
    private List<Long> attrIds = new ArrayList<>();

    @Data
    public static class NavVo{
        private String navName;
        private String navValue;
        private String link;
    }

    //================以上是返回给页码的所有信息========================

    @Data
    public static class BrandVo{
        private Long brandId;//品牌Id
        private String brandName;//品牌名字
        private String brandImg;//图片
    }

    /**
     * 分类Vo
     */
    @Data
    public static class CatalogVo{
        private Long catalogId;//分类的Id
        private String catalogName;//分类的名字
    }

    @Data
    public static class AttrVo{
        private Long attrId;//该属性id
        private String attrName;//属性名字
        private List<String> attrValue;//属性值
    }
}
